package com.gs.thunder_manage.dao.mapper;

import com.gs.thunder_manage.entity.Resource;
import com.gs.thunder_manage.entity.Role;
import com.gs.thunder_manage.entity.User;
import org.apache.ibatis.annotations.Param;
import org.springframework.stereotype.Repository;

import java.util.List;


@Repository
public interface UserMapper {

    //增加用户
    void addUser(User user);

    //增加用户角色
    void addUserRole(@Param("userId") String userId, @Param("roleId") int roleId);
    
    List<User> queryAllUser();

    //通过id获取角色信息
    User queryUserById(@Param("userId") String userId);

    //获取某个用户所有角色
    List<Role> queryRoleByUserId(@Param("userId") String userId);

    //根据用户id获取该用户可以访问的资源
    List<Resource> queryResourceByUserId(@Param("userId") String userId);

    //删除用户
    void deleteUser(@Param("userId") String userId);

    //删除用户角色
    void deleteUserRoleByUserId(@Param("userId") String userId);
}
